Temporal context-aware representation learning for question routing

ABSTRACT

A method for employing a temporal context-aware question routing model (TCQR) in multiple granularities of temporal dynamics in community-based question answering (CQA) systems is presented. The method includes encoding answerers into temporal context-aware representations based on semantic and temporal information of questions, measuring answerers expertise in one or more of the questions as a coherence between the temporal context-aware representations of the answerers and encodings of the questions, modeling the temporal dynamics of answering behaviors of the answerers in different levels of time granularities by using multi-shift and multi-resolution extensions, and outputting answers of select answerers to a visualization device.

RELATED APPLICATION INFORMATION

This application claims priority to Provisional Application No.62/885,799, filed on Aug. 12, 2019, the contents of which areincorporated herein by reference in their entirety.

BACKGROUND Technical Field

The present invention relates to community-based question answering(CQA) and, more particularly, to methods and systems for temporalcontext-aware representation learning for question routing.

Description of the Related Art

Community-based question answering (CQA) has become a popular webservice where users can exchange information in the form of questionsand answers. However, the rapid growth of CQA sites has led to a gapbetween the posted questions and the potential respondents. This causesquestion raisers to wait hours or even days for answers and makesrespondents feel overwhelmed about selecting suitable questions toanswer from the large number of open candidates. The question routingproblem, a task to bridge the gap in CQA sites, aims to allocate theanswerers more efficiently and find related questions for the answerers.Question routing (QR) aims at recommending newly posted questions topotential answerers who are most likely to answer the questions. Theexisting approaches that learn users' expertise from their pastquestion-answering activities usually suffer from challenges in twoaspects, that is, multi-faceted expertise and temporal dynamics in theanswering behavior.

SUMMARY

A computer-implemented method for employing a temporal context-awarequestion routing model (TCQR) in multiple granularities of temporaldynamics in community-based question answering (CQA) systems ispresented. The method includes encoding answerers into temporalcontext-aware representations based on semantic and temporal informationof questions, measuring answerers expertise in one or more of thequestions as a coherence between the temporal context-awarerepresentations of the answerers and encodings of the questions,modeling the temporal dynamics of answering behaviors of the answerersin different levels of time granularities by using multi-shift andmulti-resolution extensions, and outputting answers of select answerersto a visualization device.

A non-transitory computer-readable storage medium comprising acomputer-readable program is presented for employing a temporalcontext-aware question routing model (TCQR) in multiple granularities oftemporal dynamics in community-based question answering (CQA) systems,wherein the computer-readable program when executed on a computer causesthe computer to perform the steps of encoding answerers into temporalcontext-aware representations based on semantic and temporal informationof questions, measuring answerers expertise in one or more of thequestions as a coherence between the temporal context-awarerepresentations of the answerers and encodings of the questions,modeling the temporal dynamics of answering behaviors of the answerersin different levels of time granularities by using multi-shift andmulti-resolution extensions, and outputting answers of select answerersto a visualization device.

A system for employing a temporal context-aware question routing model(TCQR) in multiple granularities of temporal dynamics in community-basedquestion answering (CQA) systems is presented. The system includes amemory and one or more processors in communication with the memoryconfigured to encode answerers into temporal context-awarerepresentations based on semantic and temporal information of questions,measure answerers expertise in one or more of the questions as acoherence between the temporal context-aware representations of theanswerers and encodings of the questions, model the temporal dynamics ofanswering behaviors of the answerers in different levels of timegranularities by using multi-shift and multi-resolution extensions, andoutput answers of select answerers to a visualization device.

These and other features and advantages will become apparent from thefollowing detailed description of illustrative embodiments thereof,which is to be read in connection with the accompanying drawings.

BRIEF DESCRIPTION OF DRAWINGS

The disclosure will provide details in the following description ofpreferred embodiments with reference to the following figures wherein:

FIG. 1 is a block/flow diagram of a toy example of question routing taskwith two answerers and three questions in two expertise domains, inaccordance with embodiments of the present invention;

FIG. 2 is a block/flow diagram of a first section of an exemplaryarchitecture of a temporal context-aware question routing (TCQR) model,in accordance with embodiments of the present invention;

FIG. 3 is a block/flow diagram of a second section of the exemplary TCQRmodel, in accordance with embodiments of the present invention;

FIG. 4 is a block/flow diagram of an exemplary temporal context-awareattention model, in accordance with embodiments of the presentinvention;

FIG. 5 is block/flow diagram of an exemplary processing system for theTCQR, in accordance with embodiments of the present invention;

FIG. 6 is a block/flow diagram of an exemplary method for the TCQR, inaccordance with embodiments of the present invention; and

FIG. 7 is a block/flow diagram of equations employed in an exemplarymethod for the TCQR, in accordance with embodiments of the presentinvention.

DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS

Community-based question answering (CQA) has become a popular webservice where users can exchange information in the form of questionsand answers. For instance, Quora, one of the most popular questionanswering sites, generates a question every 1.84 seconds and hadaccumulated up to 38 million questions as of January 2019. However, therapid growth of CQA sites has led to a gap between the posted questionsand the potential respondents. This causes question raisers to waithours or even days for answers and makes respondents feel overwhelmedabout selecting suitable questions to answer from a large number of opencandidates. The question routing problem, a task to bridge the gap inCQA sites, aims to allocate the answerers more efficiently and findrelated questions for the answerers.

FIG. 1 illustrates a toy example of question routing in terms of twoanswerers 105 and three questions 110. Answerers A1 and A2 answered“Tensorflow installation” related questions Q1 and Q3, respectively.Also, A2 is capable of answering the “NoSQL database” question. If thereis a new question Q4 (120) related to “Tensorflow,” both A1 and A2 whohave equivalent expertise should be recommended. However, if consideringthe temporal factor, A2 should be recommended since Q3 answered by A2has more temporal closeness than A1. Moreover, since the questions inthe task are described by natural language, the question routing taskcan be easily extended to other expert finding tasks described by text,such as bug triaging and expert finding in social networks.

Existing question routing approaches usually focus on modeling userexpertise into a unified embedding vector by the semantics of thequestions they answered. However, these approaches suffer from thefollowing challenges.

Multifaceted expertise: Most of the users on CQA sites have multifacetedexpertise and are capable of answering questions in different domains.For instance, the answerer A2 in FIG. 1 can take the questions relatedto both “Tensorflow installation” and “NoSQL database.” Multi-facetedexpertise cannot be explicitly modeled by the existing approaches thatuse a unified representation 130 for answerers with multiple expertise.The embedding of answerer A2 can be trained by minimizing the sum of thedistances of A2−Q2 and A2−Q3 when unified representation 130 is used foranswerer A2. Since answerer A1 only answered question 1, A1's embeddingis close to Q1 and Q4. Thus, A1 is recommended in this case, which iscontrary to the truth that both A1 and A2 have equivalent expertise onquestion 4 regarding Tensorflow-related questions.

Temporal dynamics in the answering behavior: The temporal dynamics ofthe answerers' interests are based on the observation that answerers mayhave prompt expertise or willingness to answer a question that theyanswered recently. Such approaches are referred to as context-awarerepresentation 140 and temporal content-aware representation 150.Answerer A2, who answered the “Tensorflow” question recently, is morelikely to answer the new Tensorflow-related questions again thananswerer A1, who answered a similar question two years ago. Moreover,the granularity of the temporal dynamics is usually hard to define dueto the characteristics of the answerers. For example, some answerers cankeep answering questions for years, but others lose interest quickly.

In order to address the technical challenges above, the exemplaryembodiments introduce a temporal context-aware representation learningmodel for the question routing problem (TCQR). Specifically, theanswerers are encoded into temporal context-aware representations in thecontext of the semantic and temporal information of the questions. Thenthe expertise of the answerers on certain questions are measured as acoherence between the context-aware representations of the answerers andthe encodings of the questions. Moreover, multi-shift andmulti-resolution extensions are introduced to model the temporaldynamics of answering behaviors in different levels of timegranularities. In addition, new triplet loss functions based onanswerers' ranking order and temporal dynamics are introduced to learnthe users' answering behavior.

The exemplary features are summarized as follows: Design a temporalcontext-aware attention model to learn the answerer representation.Specifically, instead of representing the answerer with a unifiedembedding, the exemplary model learns the answerer representation in thecontext of a question's semantic and temporal information, which helpsto model multi-faceted expertise. The exemplary embodiments introduce anapproach to model temporal dynamics by multi-shift and multi-resolutionsettings. In particular, the multi-shift module is designed to model thetemporal impact on neighboring time periods and the multi-resolutionsetting is designed to control the temporal impact on both fine andcoarse granularities.

Recently, context-aware embedding has been utilized in many areas suchas sentiment analysis, network analysis, recommending systems, andmultimedia retrieval. For instance, one method proposed a context-awareembedding approach for the targeted aspect-based sentiment analysisproblem by utilizing a sparse coefficient vector to adjust thecontext-aware embedding of target and aspect. Another method learnedcontext-aware network embedding for a relation model in network analysisto represent the diverse roles of nodes. Yet another method proposed acontext-aware recommendation model by capturing the contextualinformation of documents. However, such approaches consider a singlemodality of context, which cannot be applied to the multi-modal contextsfor both question semantics and temporal information of the exemplaryembodiments of the present invention. Moreover, the hierarchicalcontext-aware attention extension in multi-shift and multi-resolutionenables the exemplary methods of the present invention to model thetemporal impact on neighboring periods in fine and coarse granularities.

The required notation is presented and the problem of question routingis formulated in community-based question answering (CQA) sites.

A CQA dataset that conserves all the question-answer sessions can berepresented by the following sets:

Question set Q={q₁, q₂, . . . , q_(n)}, where n denotes the number ofquestions. Each question q_(i) can be represented as a tupleq_(i)=(c_(i), t_(i)), where c_(i) is the question content in naturallanguage and t_(i) is the timestamp when the question was raised.

Answerer set A={a₁, a₂, . . . , a_(m)}, where m is the number ofanswerers. Each answerer a_(i) is represented by a low-dimensionalembedding for the question routing task.

Question-Answer Session set S={s₁, s₂, . . . , s_(n)}, where n is thetotal number of questions. Each question-answer session s_(i) includesall the answer information related to question q_(i), and it can berepresented as a tuple s_(i)=(qi, Φi, ai), where the answerer setΦ_(i)⊆A denotes all the answerers who answered the question q_(i) anda_(i)∈Φ_(i) is the answerer who gave the unique accepted answer.

For example, if a question q_(i) raised on Jul. 16, 2019 and answered byusers a₁, a₄ and a₆, where a₄ is the answerer who provided the acceptedanswer, the question can then be represented as q_(i)=((CONTENT OFQUESTION), Jul. 16, 2019) and its question-answer session s_(i) isdenoted by s_(i)=(q_(i), {a₁, a₄, a₆}, a₄). To model the temporaldynamics of the answering behavior, the following definitions of timeperiods are presented. First, the exemplary methods use different timeresolutions to split the whole time period into units where thedefinition of time resolution is shown as follows:

Definition of Time Resolution: time resolution is the granularity tosplit a time period into multiple units. For instance, the time periodfrom Jan. 1, 2019 to Jul. 1, 2019 can be split into 26 units by timeresolution 7 days, where each time unit has 7 days except for the lasttime unit, which has 6 days.

Then the exemplary methods use the function δ(t) to represent the indexof time unit belonging to time t. Following the previous example thatsplits the time period from Jan. 1, 2019 to Jul. 1, 2019, δ(t1)=1 andδ(t2)=2 when timestamp t₁ and t₂ are “Jan. 2, 2019” and “Jan. 9, 2019”.Then the time shift between two timestamps can be defined as follows:

Definition of Time Shift: time shift Δ(ti, tj) between timestamp ti andtj is defined by |δ(ti)−δ(tj)|. For instance, if ti and tj are “Jan. 2,2019” and “Jan. 17, 2019” respectively, then the time shift between themis 2. Based on the definition of time resolution and shift, theexemplary methods can model the temporal impact on neighboring timeunits in fine and coarse granularities when applying ti as the time ofraising the question. Using the above notations, the exemplary methodsdefine temporal context-aware question routing as the following:

Given question set Q, answerer set A and a new question query{circumflex over (q)}=(ĉ, {circumflex over (t)}) where ĉ and {circumflexover (t)} are the content and raising timestamp of the new question, thequestion routing problem is to compute the ranking scores for eachanswerer a∈A and recommend the answerer with the highest ranking scoreas the predicted provider of the “accepted answer.”

The architecture of the model is now presented and then the details oftemporal context-aware attention and temporal dynamics modeling viamulti-shift and multi-resolution modules are provided.

The exemplary temporal Context-aware Question Routing model (TCQR) is amulti-layer deep neural network integrating with temporal context-awareattention as well as multi-shift and multi-resolution temporal dynamicsmodules or extensions. The overall architecture 200 is shown in FIGS.2-3. The inputs of the model include both questions 210 and answerers205.

Each answerer 205 is represented by the embedding Matrix U∈

^(p×d), where p is a hyper-parameter to control the scale of userexpertise and d is the dimension for each user expertise.

The answerer embedding 207 is randomly initialized and is trainable bythe exemplary model. The question input includes both the questioncontent c (214) and question raising timestamp t (212). The content ofthe question is encoded (224) by a pre-trained deep bidirectionalTransformers model, that is, Bidirectional Encoder Representations fromTransformers (BERT). The encoding output by BERT is denoted by Q∈

^(l×d), where l is the number of words in a question. By default, theexemplary methods choose the dimension of word that is the same value asthe dimension of the answerer's embedding and fix the embedding ofquestion content untrainable for fine-tuning. The question raising timeis encoded into a unique representation vector t∈

^(d) by the time encoding module 222, where the representation is alsoused to reflect the ordered sequence of the timeline.

The content encoding 224 and time encoding 222 of question and answererembedding will be used as the inputs of the Temporal Context-Aware (TCA)attention module 230, which aims to generate the answerer embedding z∈

^(d) (232) in the context of the question and its corresponding raisingtime. Then, the exemplary methods employ the multi-shift andmulti-resolution extensions 240 on the temporal context-aware embeddingto model the temporal dynamics on neighboring time periods via differentgranularities. The multi-shift and multi-resolution extensions aredescribed in FIG. 3, where FIGS. 2 and 3 are connected by 234. Afterthat, the exemplary methods use the ranking metric function σ (290) toquantify the quality of answerer a (292) for answering question q, whichis defined as follows:

σ(Q,t,z)=(Avg_(pool)(Q)⊕t)·z ^(T),

where Q and t are the encoding of the question content (264) andquestion raising time (252), respectively. The temporal context-awareembedding (274) of the answerer is denoted by z, and ⊕ (276) is theoperator to combine the question content (254) and question time (252).By default, the exemplary methods use the “add” operator since it hasthe similar performance as concatenation operator but takes lesscomputational memory space. Then the coherence score will be utilized inthe training process. A temporal context-aware attention 270 is employedto generate TCA embedding 272 in the context of the question and itscorresponding raising time.

To encode the question raising timestamp into a low-dimensionalrepresentation t∈

^(d), the exemplary methods employ a traditional position encodingmethod (264), and the value of its k-th position in t is defined asfollows:

${t( {k,j} )} = \{ \begin{matrix}{\sin ( {k/10000^{j/d}} )} & {{{{if}\mspace{14mu} j} = {{2i} - 1}},{i \in ^{+}}} \\{\cos \; ( {k/10000^{j/d}} )} & {{{{if}\mspace{14mu} j} = {2i}},{i \in ^{+}},}\end{matrix} $

where d is the dimension of the time encoding 262 and

⁺ represents the positive integers starting from one. An example of timeencodings from September 2008 to April 2019 with the time unit of 30days can be discussed. Each row represents the time encoding for eachtime unit with 768 dimensions. The time encoding method satisfies thefollowing two properties, which are needed for the temporal dynamicsmodeling, uniqueness, the value of time encoding is unique when itrepresents different timestamps, and sequential ordering. The L2 normdistance between time encodings can be used to reflect the temporaldistance.

For example, when t₁, t₂, t₃ represent the dates Apr. 1, 2019, May 1,2019, and Jun. 1, 2019, respectively, the following property issatisfied:

∥t ₁ −t ₂∥₂ ≤∥t ₁ −t ₃∥₂.

First, most of the existing approaches assume the embeddings of twoanswerers are similar if both of them answered similar questions.However, this assumption cannot always be true when answerers havemulti-faceted expertise. For example, if two answerers a₁ and a₂ arecapable of answering questions in one area, according to the assumption,their representation u and v should be similar: u≈v.

However, if a₁ can also answer questions in a different area but a₂cannot, their representation should be considered as different. Hence,in the exemplary model, the exemplary methods assume the embedding of ananswerer is not unified but varied for different questions.Specifically, the embeddings of the two answerers are similar under thecontext of question q,u^((q))≈

^((q)) when both of them answered the question, where u^((q)) and

^((q)) represent the two answerers' embeddings in the context ofquestion q.

Following a multi-headed self-attention framework, the multi-headedtemporal context-aware attention module 310 is illustrated in FIG. 4.Specifically, the exemplary methods combine the time encoding 320 andquestion content encoding 330 as the context to learn the attention 315between question and answerer. After that, the exemplary methods applythe attention to the answerer embedding 340 for generating the temporalcontext-aware embedding z_(k) in terms of the k-th time shift, which isrepresented as follows.

${z_{k + 1} = {{{softmax}( \frac{( {{{Avg}_{pool}(Q)} \oplus t_{k}} ){W_{Q}( {z_{k}W_{1}} )}^{T}}{\sqrt{d}} )}z_{k}W_{2}}},$

where W_(Q), W₁, W₂∈

^(d×d) are the weights for the linear components 350. The embedding ofthe question content is denoted by Q∈

^(l×d) and t_(k)∈

^(d) represents the encoding of the timestamp in the k-th time shift.z_(k) denotes the embedding of the answerer that has separaterepresentations in different values of time shift k. In particular, whenk=0, z₀ equals to the initial answerer embedding U∈

^(p×d) without context information. Then the attention learned is a d×kmatrix to show the relation between the question's semantic features andthe answerer's expertise. When k≥1, the exemplary methods have z_(k) ∈

^(d) to represent the temporal context-aware embedding in terms of timeshift k. Then the attention learned from question-answerer attention 315is a scalar to show the importance of each time shift.

For the multi-shift extension, the exemplary methods use a differenttime encoding with a different time shift Δ from 1 to K, where K is setto the maximum number of time shifts modeled for temporal impact. Forexample, when Δ=1 and the question raising timestamp is t, the timeencodings of the time units δ(t)−1 and δ(t)+1 will be combined as theinput of TCA Attention module. In particular, the shifted time encodingsare combined as the sum of time encoding of the backward time unit andforward time unit.

Different from the TCA attention module used in the first layer, theexemplary methods use a residual block to enable a shortcut connectionbetween different time-shifted embeddings.

Specifically, the exemplary methods employ the context-aware embeddinginput of the k-th time-shift layer z_(k) ^((in)) as the sum of both theinput and output of the (k−1) layer:

z_(k) ^((in))←z_(k−1) ^((in))+z_(k−1) ^((out)).

For the multi-resolution extension, the exemplary methods can choosedifferent time resolutions to split the time period into multi-grainedunits. For each resolution, the time encoding includes the temporalinformation in diverse levels of time granularities. After themulti-shift temporal context-aware embedding layers, the exemplarymethods combine the context-aware embedding z_(k) ^((r) ^(i) ⁾ for eachtime resolution together, where the superscript r_(i) represents thesize of the i-th time resolution. Then the exemplary methods employ afully connected layer to project combined embeddings into ad-dimensional embedding vector.

To train the model, the exemplary methods first apply a ranking tripletloss function to learn the relative rank between positive samples (usersanswered the question) and negative samples (users did not answer thequestion). Moreover, to distinguish the answerer who provided theaccepted answer from the other answerers in the same question, theexemplary methods also add an additional ranking loss term between them.

The ranking loss is given as follows:

${\mathcal{L}_{r} = {\sum\limits_{q_{i} \in Q}\{ {{\sum\limits_{{z^{+} \in \Phi_{i}}{z^{-} \notin \Phi_{i}}}{\max ( {{{\sigma ( {Q_{i},t_{i},z^{+}} )} - {\sigma ( {Q_{i},t_{i},z_{k}^{-}} )} + \alpha_{p}},0} )}} + {\sum\limits_{z^{+} \in \Phi_{i}}{\max( {{{\sigma( {Q_{i},t_{i},z^{*}} )} - {\sigma ( {Q_{i},t_{i},z^{+}} )} + \alpha_{c}},0} )}}} \}}},$

where Φ_(i) denotes the users who answered the question q_(i)=(Q_(i),t_(i))∈Q. The variables z⁺, z⁻ and z* represent the embedding of thepositive answerers, negative answerers, and answerer who provided theaccepted answer, respectively. The exemplary methods employ a marginvalue α_(p) to control the distance between positive and negativeanswerers and use a margin value α_(c) for the distance between positiveanswerers and the user who give the accepted answer.

Moreover, to learn the observation that more recent answering behaviorshave higher impact on the recommendation of answerers, the exemplarymethods introduce a new temporal loss function between the neighboringtime shifts, as shown below.

$\mathcal{L}_{s} = {\sum\limits_{q_{i} \in Q}\{ {\sum\limits_{z^{+} \in \Phi_{i}}{\sum\limits_{k = 1}^{K}{\max ( {{{\sigma ( {Q_{i},t_{i},z_{k - 1}^{+}} )} - {\sigma ( {Q_{i},t_{i},z_{k}^{+}} )} + \alpha_{s}},0} )}}} \}}$

where k is the index of time shift and K is the total number of timeshifts. z_(k) ⁺ represents the temporal context-aware embedding ofanswerers after the k-th time shift. The exemplary methods set themargin parameter α_(s) to one.

Then the exemplary methods combine both the ranking loss and time shiftloss together to generate the total loss

as follows:

=

_(r)+λ

_(s), where λ is a parameter to balance the two loss functions and isset to 0.5 by default.

In conclusion, the exemplary methods introduce a temporal context-awarequestion routing model (TCQR) in community-based question answering(CQA) systems. The exemplary model learns the answerers' representationin the context of both the semantic and temporal information to handlethe multi-faceted expertise of answerers in CQA system. To model thetemporal dynamics of answering behavior, the exemplary methods extendthe temporal context-aware attention model into its multi-shift andmulti-resolution extensions, which enable the model to learn thetemporal impact on the neighboring time periods in multiple timegranularities. Stated differently, the exemplary embodiments of thepresent invention introduce a temporal context-aware model in multiplegranularities of temporal dynamics that concurrently address the abovechallenges. Specifically, the temporal context-aware attentioncharacterizes the answerer's multi-faceted expertise in terms of thequestions' semantic and temporal information, concurrently orsimultaneously. Moreover, the design of the multi-shift andmulti-resolution modules or extensions enables the model to handletemporal impact on different time granularities.

FIG. 5 is block/flow diagram of an exemplary processing system for theTCQR, in accordance with embodiments of the present invention.

The processing system includes at least one processor or processordevice (CPU) 604 and a graphics processing unit (GPU) 605 operativelycoupled to other components via a system bus 602. A cache 606, a ReadOnly Memory (ROM) 608, a Random Access Memory (RAM) 610, an input/output(I/O) adapter 620, a network adapter 630, a user interface adapter 640,and a display adapter 650, are operatively coupled to the system bus602. Question routing systems 660 can be employed via the bus 602. Thequestion routing systems 660 can employ a temporal context-awarerepresentation learning model 670 by utilizing a multi-shift extension672 and a multi-resolution extension 674.

A storage device 622 is operatively coupled to system bus 602 by the I/Oadapter 620. The storage device 622 can be any of a disk storage device(e.g., a magnetic or optical disk storage device), a solid statemagnetic device, and so forth.

A transceiver 632 is operatively coupled to system bus 602 by networkadapter 630.

User input devices 642 are operatively coupled to system bus 602 by userinterface adapter 640. The user input devices 642 can be any of akeyboard, a mouse, a keypad, an image capture device, a motion sensingdevice, a microphone, a device incorporating the functionality of atleast two of the preceding devices, and so forth. Of course, other typesof input devices can also be used, while maintaining the spirit of thepresent invention. The user input devices 642 can be the same type ofuser input device or different types of user input devices. The userinput devices 642 are used to input and output information to and fromthe processing system.

A display device 652 is operatively coupled to system bus 602 by displayadapter 650.

Of course, the processing system may also include other elements (notshown), as readily contemplated by one of skill in the art, as well asomit certain elements. For example, various other input devices and/oroutput devices can be included in the system, depending upon theparticular implementation of the same, as readily understood by one ofordinary skill in the art. For example, various types of wireless and/orwired input and/or output devices can be used. Moreover, additionalprocessors, processor devices, controllers, memories, and so forth, invarious configurations can also be utilized as readily appreciated byone of ordinary skill in the art. These and other variations of theprocessing system are readily contemplated by one of ordinary skill inthe art given the teachings of the present invention provided herein.

FIG. 6 is a block/flow diagram of an exemplary method for the TCQR, inaccordance with embodiments of the present invention.

At block 701, encode answerers into temporal context-awarerepresentations based on semantic and temporal information of questions.

At block 703, measure answerers expertise in one or more of thequestions as a coherence between the temporal context-awarerepresentations of the answerers and encodings of the questions.

At block 705, model the temporal dynamics of answering behaviors of theanswerers in different levels of time granularities by using multi-shiftand multi-resolution extensions.

At block 707, output answers of select answerers to a visualizationdevice.

FIG. 7 is a block/flow diagram of equations employed in methods for theTCQR, in accordance with embodiments of the present invention.

Equations 800 identify a ranking metric function, a temporalcontext-aware embedding equation, a ranking loss equation, and atemporal loss function equation between neighboring time shifts.

As used herein, the terms “data,” “content,” “information” and similarterms can be used interchangeably to refer to data capable of beingcaptured, transmitted, received, displayed and/or stored in accordancewith various example embodiments. Thus, use of any such terms should notbe taken to limit the spirit and scope of the disclosure. Further, wherea computing device is described herein to receive data from anothercomputing device, the data can be received directly from the anothercomputing device or can be received indirectly via one or moreintermediary computing devices, such as, for example, one or moreservers, relays, routers, network access points, base stations, and/orthe like. Similarly, where a computing device is described herein tosend data to another computing device, the data can be sent directly tothe another computing device or can be sent indirectly via one or moreintermediary computing devices, such as, for example, one or moreservers, relays, routers, network access points, base stations, and/orthe like.

To provide for interaction with a user, embodiments of the subjectmatter described in this specification can be implemented on a computerhaving a display device, e.g., a CRT (cathode ray tube) or LCD (liquidcrystal display) monitor, for displaying information to the user and akeyboard and a pointing device, e.g., a mouse or a trackball, by whichthe user can provide input to the computer. Other kinds of devices canbe used to provide for interaction with a user as well; for example,feedback provided to the user can be any form of sensory feedback, e.g.,visual feedback, auditory feedback, or tactile feedback; and input fromthe user can be received in any form, including acoustic, speech, ortactile input.

As will be appreciated by one skilled in the art, aspects of the presentinvention may be embodied as a system, method or computer programproduct. Accordingly, aspects of the present invention may take the formof an entirely hardware embodiment, an entirely software embodiment(including firmware, resident software, micro-code, etc.) or anembodiment combining software and hardware aspects that may allgenerally be referred to herein as a “circuit,” “module,” “calculator,”“device,” or “system.” Furthermore, aspects of the present invention maytake the form of a computer program product embodied in one or morecomputer readable medium(s) having computer readable program codeembodied thereon.

Any combination of one or more computer readable medium(s) may beutilized. The computer readable medium may be a computer readable signalmedium or a computer readable storage medium. A computer readablestorage medium may be, for example, but not limited to, an electronic,magnetic, optical, electromagnetic, infrared, or semiconductor system,apparatus, or device, or any suitable combination of the foregoing. Morespecific examples (a non-exhaustive list) of the computer readablestorage medium would include the following: an electrical connectionhaving one or more wires, a portable computer diskette, a hard disk, arandom access memory (RAM), a read-only memory (ROM), an erasableprogrammable read-only memory (EPROM or Flash memory), an optical fiber,a portable compact disc read-only memory (CD-ROM), an optical datastorage device, a magnetic data storage device, or any suitablecombination of the foregoing. In the context of this document, acomputer readable storage medium may be any tangible medium that caninclude, or store a program for use by or in connection with aninstruction execution system, apparatus, or device.

A computer readable signal medium may include a propagated data signalwith computer readable program code embodied therein, for example, inbaseband or as part of a carrier wave. Such a propagated signal may takeany of a variety of forms, including, but not limited to,electro-magnetic, optical, or any suitable combination thereof. Acomputer readable signal medium may be any computer readable medium thatis not a computer readable storage medium and that can communicate,propagate, or transport a program for use by or in connection with aninstruction execution system, apparatus, or device.

Program code embodied on a computer readable medium may be transmittedusing any appropriate medium, including but not limited to wireless,wireline, optical fiber cable, RF, etc., or any suitable combination ofthe foregoing.

Computer program code for carrying out operations for aspects of thepresent invention may be written in any combination of one or moreprogramming languages, including an object oriented programming languagesuch as Java, Smalltalk, C++ or the like and conventional proceduralprogramming languages, such as the “C” programming language or similarprogramming languages. The program code may execute entirely on theuser's computer, partly on the user's computer, as a stand-alonesoftware package, partly on the user's computer and partly on a remotecomputer or entirely on the remote computer or server. In the latterscenario, the remote computer may be connected to the user's computerthrough any type of network, including a local area network (LAN) or awide area network (WAN), or the connection may be made to an externalcomputer (for example, through the Internet using an Internet ServiceProvider).

Aspects of the present invention are described below with reference toflowchart illustrations and/or block diagrams of methods, apparatus(systems) and computer program products according to embodiments of thepresent invention. It will be understood that each block of theflowchart illustrations and/or block diagrams, and combinations ofblocks in the flowchart illustrations and/or block diagrams, can beimplemented by computer program instructions. These computer programinstructions may be provided to a processor of a general purposecomputer, special purpose computer, or other programmable dataprocessing apparatus to produce a machine, such that the instructions,which execute via the processor of the computer or other programmabledata processing apparatus, create means for implementing thefunctions/acts specified in the flowchart and/or block diagram block orblocks or modules.

These computer program instructions may also be stored in a computerreadable medium that can direct a computer, other programmable dataprocessing apparatus, or other devices to function in a particularmanner, such that the instructions stored in the computer readablemedium produce an article of manufacture including instructions whichimplement the function/act specified in the flowchart and/or blockdiagram block or blocks or modules.

The computer program instructions may also be loaded onto a computer,other programmable data processing apparatus, or other devices to causea series of operational steps to be performed on the computer, otherprogrammable apparatus or other devices to produce a computerimplemented process such that the instructions which execute on thecomputer or other programmable apparatus provide processes forimplementing the functions/acts specified in the flowchart and/or blockdiagram block or blocks or modules.

It is to be appreciated that the term “processor” as used herein isintended to include any processing device, such as, for example, onethat includes a CPU (central processing unit) and/or other processingcircuitry. It is also to be understood that the term “processor” mayrefer to more than one processing device and that various elementsassociated with a processing device may be shared by other processingdevices.

The term “memory” as used herein is intended to include memoryassociated with a processor or CPU, such as, for example, RAM, ROM, afixed memory device (e.g., hard drive), a removable memory device (e.g.,diskette), flash memory, etc. Such memory may be considered a computerreadable storage medium.

In addition, the phrase “input/output devices” or “I/O devices” as usedherein is intended to include, for example, one or more input devices(e.g., keyboard, mouse, scanner, etc.) for entering data to theprocessing unit, and/or one or more output devices (e.g., speaker,display, printer, etc.) for presenting results associated with theprocessing unit.

The foregoing is to be understood as being in every respect illustrativeand exemplary, but not restrictive, and the scope of the inventiondisclosed herein is not to be determined from the Detailed Description,but rather from the claims as interpreted according to the full breadthpermitted by the patent laws. It is to be understood that theembodiments shown and described herein are only illustrative of theprinciples of the present invention and that those skilled in the artmay implement various modifications without departing from the scope andspirit of the invention. Those skilled in the art could implementvarious other feature combinations without departing from the scope andspirit of the invention. Having thus described aspects of the invention,with the details and particularity required by the patent laws, what isclaimed and desired protected by Letters Patent is set forth in theappended claims.

What is claimed is:
 1. A computer-implemented method executed on aprocessor for employing a temporal context-aware question routing model(TCQR) in multiple granularities of temporal dynamics in community-basedquestion answering (CQA) systems, the method comprising: encodinganswerers into temporal context-aware representations based on semanticand temporal information of questions; measuring answerers expertise inone or more of the questions as a coherence between the temporalcontext-aware representations of the answerers and encodings of thequestions; modeling the temporal dynamics of answering behaviors of theanswerers in different levels of time granularities by using multi-shiftand multi-resolution extensions; and outputting answers of selectanswerers to a visualization device.
 2. The method of claim 1, wherein atriplet loss function based on answerers' ranking order and the temporaldynamics is employed to learn the answering behaviors of the answerers.3. The method of claim 1, wherein the multi-shift extension models atemporal impact on neighboring time periods.
 4. The method of claim 3,wherein the multi-resolution extension controls the temporal impact onboth fine and coarse granularities.
 5. The method of claim 1, wherein aranking metric function is used to quantify a quality of an answerer ofthe answerers for a specific question.
 6. The method of claim 5, whereinthe ranking metric function is given as:σ(Q,t,z)=(Avg_(pool)(Q)⊕t)·z ^(T), where Q and t are encoding of aquestion content and question raising time, respectively, a temporalcontext-aware embedding of an answerer is denoted by z, and ⊕ is anoperator for combining the question content and time.
 7. The method ofclaim 1, wherein time encoding and question content encoding fed into atemporal context-aware attention component are combined to learn anattention between a question and an answerer of the answerers.
 8. Themethod of claim 7, wherein the attention is applied to an answererembedding to generate a temporal context-aware embedding.
 9. The methodof claim 1, wherein each answerer of the answerers is represented by anembedding matrix given as:U∈

^(p×d), where p is a hyper-parameter to control a scale of userexpertise and d is a dimension for each user expertise.
 10. Anon-transitory computer-readable storage medium comprising acomputer-readable program for employing a temporal context-awarequestion routing model (TCQR) in multiple granularities of temporaldynamics in community-based question answering (CQA) systems, whereinthe computer-readable program when executed on a computer causes thecomputer to perform the steps of: encoding answerers into temporalcontext-aware representations based on semantic and temporal informationof questions; measuring answerers expertise in one or more of thequestions as a coherence between the temporal context-awarerepresentations of the answerers and encodings of the questions;modeling the temporal dynamics of answering behaviors of the answerersin different levels of time granularities by using multi-shift andmulti-resolution extensions; and outputting answers of select answerersto a visualization device.
 11. The non-transitory computer-readablestorage medium of claim 10, wherein a triplet loss function based onanswerers' ranking order and the temporal dynamics is employed to learnthe answering behaviors of the answerers.
 12. The non-transitorycomputer-readable storage medium of claim 10, wherein the multi-shiftextension models a temporal impact on neighboring time periods.
 13. Thenon-transitory computer-readable storage medium of claim 12, wherein themulti-resolution extension controls the temporal impact on both fine andcoarse granularities.
 14. The non-transitory computer-readable storagemedium of claim 10, wherein a ranking metric function is used toquantify a quality of an answerer of the answerers for a specificquestion.
 15. The non-transitory computer-readable storage medium ofclaim 14, wherein the ranking metric function is given as:σ(Q,t,z)=(Avg_(pool)(Q)⊕t)·z ^(T), where Q and t are encoding of aquestion content and question raising time, respectively, a temporalcontext-aware embedding of an answerer is denoted by z, and ⊕ is anoperator for combining the question content and time.
 16. Thenon-transitory computer-readable storage medium of claim 10, whereintime encoding and question content encoding fed into a temporalcontext-aware attention component are combined to learn an attentionbetween a question and an answerer of the answerers.
 17. Thenon-transitory computer-readable storage medium of claim 16, wherein theattention is applied to an answerer embedding to generate a temporalcontext-aware embedding.
 18. The non-transitory computer-readablestorage medium of claim 10, wherein each answerer of the answerers isrepresented by an embedding matrix given as:U∈

^(p×d), where p is a hyper-parameter to control a scale of userexpertise and d is a dimension for each user expertise.
 19. A system foremploying a temporal context-aware question routing model (TCQR) inmultiple granularities of temporal dynamics, the system comprising: amemory; and one or more processors in communication with the memoryconfigured to: encode answerers into temporal context-awarerepresentations based on semantic and temporal information of questions;measure answerers expertise in one or more of the questions as acoherence between the temporal context-aware representations of theanswerers and encodings of the questions; model the temporal dynamics ofanswering behaviors of the answerers in different levels of timegranularities by using multi-shift and multi-resolution extensions; andoutput answers of select answerers to a visualization device.
 20. Thesystem of claim 19, wherein a triplet loss function based on answerers'ranking order and the temporal dynamics is employed to learn theanswering behaviors of the answerers.